package testy.client;

import static org.junit.Assert.*;

import javax.swing.JOptionPane;

import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;

import baduga.client.Client_Init;
import baduga.core.Database_Messages;



public class Test__Client_Init {
	
	
	
	static Client_Init obj;
	
	
	
	/**
	 * Ustawienie przed Odpaleniem testów
	 * 
	 * @throws java.lang.Exception
	 */
	@BeforeClass
	public static void  setUpBeforeClass() throws Exception {
		obj  = new Client_Init();
	}

	/**
	 * Po Odpaleniu Testów
	 * 
	 * @throws java.lang.Exception
	 */
	@AfterClass
	public static void tearDownAfterClass() throws Exception {
		obj = null;
		
		
	}
	

	@Test
	/**
	 * 
	 * Sprawdza czy uruchomił się klient
	 * 
	 */
	public void testInitWindow() {
		
		Thread thTest;
		
		JOptionPane.showMessageDialog(null,
			    "Proszę w następnym komunikacie potwierdzić, czy wyświetliło się okno klienta.",
			    "Komunikat",
			    JOptionPane.ERROR_MESSAGE);
		
		
		new Thread(new Runnable(){
		        @Override
		        public void run() {
		        	
		        	obj  = new Client_Init();
		        	
		        	obj.deubug();

		        }
		    }).start();
		
		
		
		
		synchronized (this) {
			try {
				wait(500);
			} catch (InterruptedException e) {
				System.out.println("Błąd: " + e.getLocalizedMessage());
				
				fail("Wątek przerwany.");
			}
		}
		
		Thread.currentThread().interrupt();
		
		final int result = JOptionPane.showConfirmDialog(
			null,
			"Proszę potwierdzić uruchomienie się okna",
			"Komunikat",
			JOptionPane.YES_NO_OPTION);
		
		
		assertEquals("Sprawdzenie czy okno się uruchamia: ", 0, result);
		
		
	}

}
